const { Sequelize } = require('sequelize');
const { dbLogger } = require('../../logger/index.js');

const sequelize = new Sequelize(process.env.DB_DATABASE, process.env.DB_USER, process.env.DB_PASSWORD, {
    host: process.env.DB_HOST,
    port: process.env.DB_PORT,
    dialect: 'mysql',
    logging: msg => dbLogger.info(msg),
    timezone: '+08:00',
    pool: {
        max: 10, // 最大连接数
        min: 2,  // 最小连接数
        acquire: 30000, // 获取连接的最大等待时间（毫秒）
        idle: 10000 // 连接空闲的最大时间（毫秒）
    },
});

sequelize.authenticate().then(() => {
    console.log('数据库连接成功');
}).catch(err => {
    console.log('数据库连接失败：' + err);
});

// if(process.env.NODE_ENV === 'development'){
//     sequelize.sync({ alter: true }).then(() => {
//         console.log('手动同步数据库成功');
//     }).catch(error => {
//         console.error('手动同步数据库失败', error);
//     });
// }

module.exports = sequelize;